September 95 - Multipane Dialogs
Multipane Dialogs
Norman Franke
As applications grow in power and complexity, so does the tendency to present users
with numerous cluttered dialog boxes. To simplify the user interface, developers are
moving increasingly to dialogs with multiple panes. This article describes how to
implement multipane dialogs that users navigate by clicking in a scrolling list of
icons.
Dialog boxes with multiple panes ("pages" of controls) are an increasingly popular
element of the Macintosh user interface. Like simple dialogs, multipane dialogs can be
presented when users need to indicate preferences, set attributes of text or graphic
objects, or give specifications for complex operations such as searches or formatting,
among other things. By grouping related options and providing a single point of
interaction for manipulating them, multipane dialogs simplify life for the user and the
developer.
Five different kinds of controls for navigating multipane dialogs are in general use: the
scrolling list of icons, the pop-up menu, index tabs (simulating the look of tabs on the
tops of file folders in a file cabinet), Next/Previous buttons, and icon button sets.
Although there aren't any hard-and-fast rules about when you should use one over
another, these considerations (suggested by Elizabeth Moller of Apple's Human
Interface Design Center) generally apply:
• Novice users have trouble with pop-up menus, so choose a different kind
of control if your target audience includes large numbers of these users.
• Index tabs work well for small numbers of panes, but they may not work
well when the tabs start overlapping or the number of panes is variable.
• Next/Previous buttons are a good choice when there's more than one
mandatory pane. They make it easy for users to step through mandatory and
optional panes in sequence.
The sample application MPDialogs on this issue's CD demonstrates the use of a
multipane preferences dialog navigated by clicking in a scrolling list of icons, similar
to the Control Panel in System 6 and print dialogs in QuickDraw GX. After describing
the user interface presented by this sample program, I'll go into the details of how to
implement a similar multipane dialog in your own application. Source code for the
routines I'll discuss is also included on the CD. This code requires System 7 and is
compatible with both black-and-white and color displays.
WHAT THE USER INTERFACE LOOKS LIKE
To experience how multipane dialogs work, run the sample program MPDialogs. When
you choose Preferences from the File menu, you'll be presented with the interface
shown in Figure 1. This is a good illustration of the elements of a multipane dialog.
Figure 1. The Communications pane of the sample multipane dialog
The long vertical rectangle on the left side of the dialog box contains the pane selection
icon list. Each icon in this scrolling list has a one-word label under it for
identification and represents one pane of the dialog, which is displayed when the user